package com.aiYouPms.common.dao;

import com.aiYouPms.common.model.Role;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
public interface AdminUserRoleDao {
    
    /**
     * 根据用户ID查询角色ID列表
     * @param userId 用户ID
     * @return 角色ID列表
     */
    List<Integer> findRoleIdsByUserId(Integer userId);
    
    /**
     * 根据角色ID列表查询角色信息
     * @param roleIds 角色ID列表
     * @return 角色列表
     */

    List<Role> findRolesByRoleIds(@Param("roleIds") List<Integer> roleIds);


    /**
     * 根据角色id查询角色信息
     *
     */
    Role findRoleById(Integer roleId);


    int insertUserRole(Integer userId, Integer roleId);
    
    /**
     * 根据用户ID删除用户角色关联记录
     * @param adminUserId 用户ID
     * @return 删除影响的行数
     */
    int deleteUserRolesByUserId(Integer adminUserId);
    
    /**
     * 根据角色ID删除用户角色关联记录
     * @param roleId 角色ID
     * @return 删除影响的行数
     */
    int deleteUserRolesByRoleId(Integer roleId);
}